/**************************************************************************** 
* 
* Copyright (c) 2023  C*Core -   All Rights Reserved  
* 
* THIS SOFTWARE IS DISTRIBUTED "AS IS," AND ALL WARRANTIES ARE DISCLAIMED, 
* INCLUDING MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
* 
* PROJECT     : CCFC2011BC           
* DESCRIPTION : CCFC2011BC Demo code 
* HISTORY     : Initial version.
* @file     demo.h
* @version  1.1
* @date     2023 - 02 - 20
* @brief    Initial version.
*
*****************************************************************************/
#ifndef DEMO_H_
#define DEMO_H_

#define DEMO_ENABLE             0U

/* Code download device selection switch
 * Master: 1, Slave: 0. */
#define DEVICE_SWITCH_MASTER    1U

/* 
 * The demo main switch**************************************************/
#if (DEVICE_SWITCH_MASTER)
#define ADC_DEMO_SW             0U
#define FLASH_DEMO_SW           0U
#define IIC_DEMO_SW             0U
#define LINFLEX_DEMO_SW         0U
#define PIT_DEMO_SW             0U
#define PWM_DEMO_SW             0U
#define RTCAPI_DEMO_SW          0U
#define STM_DEMO_SW             1U
#define CAN_DEMO_SW             1U
#define CANFD_DEMO_SW           0U
#define ICU_DEMO_SW             0U
#define SPI_DEMO_SW             1U
#define INTC_DEMO_SW            0U
#define CORE_DEMO_SW            0U
#define ECSM_DEMO_SW            0U
#define LOWPOWER_DEMO_SW        0U
#define SWT_DEMO_SW             0U
#define MPU_DEMO_SW             0U
#else
#define ADC_DEMO_SW             0U
#define FLASH_DEMO_SW           0U
#define IIC_DEMO_SW             1U
#define LINFLEX_DEMO_SW         1U
#define PIT_DEMO_SW             0U
#define PWM_DEMO_SW             0U
#define RTCAPI_DEMO_SW          0U
#define STM_DEMO_SW             0U
#define CAN_DEMO_SW             0U
#define CANFD_DEMO_SW           0U
#define ICU_DEMO_SW             0U
#define SPI_DEMO_SW             0U
#define INTC_DEMO_SW            0U
#define CORE_DEMO_SW            0U
#define ECSM_DEMO_SW            0U
#define LOWPOWER_DEMO_SW        0U
#define SWT_DEMO_SW             0U
#define MPU_DEMO_SW             0U
#endif

/*
 * The header file contains**********************************************/
#if ADC_DEMO_SW
#include "adc_demo.h"
#endif

#if CORE_DEMO_SW
#endif

#if ECSM_DEMO_SW
#include "ecsm_demo.h"
#endif

#if FLASH_DEMO_SW
#include "flash_demo.h"
#endif

#if IIC_DEMO_SW
#include "iic_demo.h"
#endif

#if INTC_DEMO_SW
#include "intc_demo.h"
#endif

#if LINFLEX_DEMO_SW
#include "lin_demo.h"
#endif

#if LOWPOWER_DEMO_SW
#include "lowpower_demo.h"
#endif

#if MPU_DEMO_SW
#include "mpu_demo.h"
#endif

#if PIT_DEMO_SW
#include "pit_demo.h"
#endif

#if PWM_DEMO_SW
#include "pwm_demo.h"
#endif

#if RTCAPI_DEMO_SW
#include "rtcapi_demo.h"
#endif

#if STM_DEMO_SW
#include "stm_demo.h"
#endif

#if SWT_DEMO_SW
#include "swt_demo.h"
#endif

#if CAN_DEMO_SW
#include "can_demo.h"
#endif

#if CANFD_DEMO_SW
#include "canfd_demo.h"
#endif

#if ICU_DEMO_SW
#include "icu_demo.h"
#endif

#if SPI_DEMO_SW
#include "spi_demo.h"
#endif

extern void Demo_Test(void);
/*
 * Macro
 */

#endif /* DEMO_H_ */
